import axios from 'axios'
import Assert from '../common/Assert.js'

export const JcService = class JcService {
    static jcService = null
    requestUrl = 'http://localhost/jcs'

    static getInstance() {
        if (this.jcService == null) {
            this.jcService = new JcService()
        }
        return this.jcService
    }

    /**
     * 分页查询
     * @param params
     */
    getByPage(params) {
        return axios.get(`${this.requestUrl}/page`, {
            params
        })
    }

    /**
     * 根据id查询
     * @param id
     */
    getById(id) {
        return axios.get(`${this.requestUrl}/${id}`)
    }

    /**\
     * 检查的方法
     * @param jc
     */
    check(jc) {
        if (!Assert.isNotNull(jc.caseid, '请选择案件')) {
            return false
        }
        if (!Assert.isNotNull(jc.cbr, '请输入承办人')) {
            return false
        }
        if (!Assert.isNotNull(jc.tel, '请输入联系电话')) {
            return false
        }
        if (!Assert.validPhone(jc.tel)) {
            return false
        }
        return true
    }

    /**
     * 保存的方法
     * @param jc
     */
    save(jc) {
        return axios.post(this.requestUrl, jc)
    }

    /**
     * 修改的方法
     * @param jc
     */
    update(jc) {
        return axios.put(this.requestUrl, jc)
    }

    /**
     * 根据id删除
     * @param id
     */
    removeById(id) {
        return axios.delete(`${this.requestUrl}/${id}`)
    }
}